package com.j2eefast.bussiness.contract.entity;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>职称管理</p>
 *
 * @author: summer
 * @date: 2021-06-09 10:41
 * @web: http://www.letukeji.cn
 * @version: 1.0.1
 */
@Data
@TableName("hr_professional")
//设置头高
@HeadRowHeight(20)
@ColumnWidth(15)		// 表头行宽
@HeadFontStyle(fontHeightInPoints = 12)
@ExcelIgnoreUnannotated
public class HrProfessionalEntity implements Serializable {

    @TableId(value = "id", type = IdType.AUTO)
    protected Long id;


    //员工编号
    @TableField(value = "user_code")
    @ExcelProperty(value = "员工编号",index = 0)
    protected String userCode;

    //员工姓名
    @TableField(value = "user_name")
    @ExcelProperty(value = "员工姓名",index = 1)
    protected String userName;


    //部门id
    @TableField(value = "dept_id")
    @ExcelProperty(value = "部门编号",index = 2)
    protected String deptId;
    //职称
    @TableField(value = "title")
    @ExcelProperty(value = "职称",index = 3)
    protected String title;

    //备注
    @TableField(value = "remark")
    @ExcelProperty(value = "备注",index = 12)
    protected String remark;
    //创建日期
    @TableField(value = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    protected Date createTime;
    //更新日期
    @TableField(value = "update_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    protected Date updateTime;
    //创建人
    @TableField(value = "create_by")
    protected String createBy;
    //更新人
    @TableField(value = "update_by")
    protected String updateBy;

    //取得日期
    @TableField(value = "obtain_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ExcelProperty(value = "取得日期",index = 4)
    protected Date obtainTime;
    //取得方式
    @TableField(value = "obtain_mode")
    @ExcelProperty(value = "取得方式",index = 5)
    protected String obtainMode;
    //聘用单位
    @TableField(value = "employ_unit")
    @ExcelProperty(value = "聘用单位",index = 6)
    protected String employUnit;
    //聘用专业技术职务
    @TableField(value = "employ_job")
    @ExcelProperty(value = "聘用专业技术职务",index = 7)
    protected String employJob;
    //职称英语
    @TableField(value = "professional_english")
    @ExcelProperty(value = "英语职称",index = 8)
    protected String professionalEnglish;
    //职称英语取得日期
    @TableField(value = "english_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ExcelProperty(value = "职称英语取得日期",index = 9)
    protected Date englishTime;

    //职称电脑
    @TableField(value = "professional_computer")
    @ExcelProperty(value = "电脑职称",index = 10)
    protected String professionalComputer;
    //职称电脑日期
    @TableField(value = "computer_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ExcelProperty(value = "电脑职称取得日期",index = 11)
    protected Date computerTime;
    //职称电脑日期
    @TableField(value = "employ_start")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    protected Date employStart;
    //职称电脑日期
    @TableField(value = "employ_end")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    protected Date employEnd;
    //工作
    @TableField(value = "work")
    protected String work;

    @Override
    public String toString() {
        return super.toString();
    }
}
